<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Grupo_Usuario_frm( $this );

	class Grupo_Usuario_frm extends Frm
	{

	function Grupo_Usuario_frm( &$oModule )
		{
			$this->Frm( $oModule );
			//Crea los Objetos de los campos de edicion
			$this->aFields['ncGrupo'] 						= new Input( "Codigo", "ncGrupo", '', false, true );
			$this->aFields['ncUsuario'] 						= new InputList( "Usuario" , "ncUsuario" );
			$this->aFields['ncPermisoOrganizacion'] 	= new InputList( "Organizacion", "ncPermisoOrganizacion" );
			$this->aFields['ncPermisoLaboral'] 			= new InputList( "Laboral", "ncPermisoLaboral" );
			$this->aFields['ncPermisoPersona'] 		= new InputList( "Persona", "ncPermisoPersona" );
			$this->aFields['ncPermisoAgenda'] 			= new InputList( "Agenda", "ncPermisoAgenda" );
			$this->aFields['ncPermisoTarea'] 			= new InputList( "Tarea", "ncPermisoTarea" );
			$this->aFields['ncPermisoNotas'] 			= new InputList( "Notas", "ncPermisoNotas" );
		}
	function setValue( $ncGrupo, $ncUsuario )
		{
			$cSql = "SELECT ncGrupo, ncUsuario, ncPermisoOrganizacion, ncPermisoLaboral, ncPermisoPersona, ncPermisoAgenda, ncPermisoTarea, ncPermisoNotas
								FROM atGrupoUsuario
								WHERE ncGrupo= $ncGrupo
									AND ncUsuario = $ncUsuario";
			$aRow = $this->oDatabase->getArray($cSql);
			$this->setFieldsArray ( $aRow );
		}
	function initializeForm()
		{
			// Si Recibe la Pk => busca los datos
				if ( $this->isRetrievable() &&  $this->aFields['ncGrupo']->getValue() &&  $this->aFields['ncUsuario']->getValue() )
				{
					$aRow = $this->setValue( $this->aFields['ncGrupo']->getValue() , $this->aFields['ncUsuario']->getValue() );
				}
			// Configura el Titulo
				$this->setLabel( "Usuario de un Grupo" );
			return true;
		}
	function initializeField( $cField , &$oField )
		{
			switch ( $cField )
			{
				case 'ncUsuario':
					$cSql = "SELECT ncUsuario, cUsuario FROM stUsuario WHERE bBaja=0 ORDER BY 2";
					$oField->setMatrix( $this->oDatabase->getMatrix( $cSql ) );
				break;
				case 'ncPermisoOrganizacion':
				case 'ncPermisoLaboral':
				case 'ncPermisoPersona':
				case 'ncPermisoAgenda':
				case 'ncPermisoTarea':
				case 'ncPermisoNotas':
					$cSql = "SELECT ncPermiso, cdPermiso FROM acPermiso";
					$oField->setMatrix( $this->oDatabase->getMatrix( $cSql ) );
				break;
			}
		}
	}
?>